﻿namespace TestTool.Proxies.Onvif
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Xml;
    using System.Xml.Serialization;

    [Serializable, GeneratedCode("svcutil", "3.0.4506.2152"), XmlType(Namespace="http://www.onvif.org/ver10/deviceIO/wsdl"), DebuggerStepThrough, DesignerCategory("code")]
    public class RelayOutputOptions
    {
        private XmlAttribute[] anyAttrField;
        private string delayTimesField;
        private bool discreteField;
        private bool discreteFieldSpecified;
        private RelayOutputOptionsExtension extensionField;
        private RelayMode[] modeField;
        private string tokenField;

        [XmlAnyAttribute]
        public XmlAttribute[] AnyAttr
        {
            get
            {
                return this.anyAttrField;
            }
            set
            {
                this.anyAttrField = value;
            }
        }

        [XmlElement(Order=1)]
        public string DelayTimes
        {
            get
            {
                return this.delayTimesField;
            }
            set
            {
                this.delayTimesField = value;
            }
        }

        [XmlElement(Order=2)]
        public bool Discrete
        {
            get
            {
                return this.discreteField;
            }
            set
            {
                this.discreteField = value;
            }
        }

        [XmlIgnore]
        public bool DiscreteSpecified
        {
            get
            {
                return this.discreteFieldSpecified;
            }
            set
            {
                this.discreteFieldSpecified = value;
            }
        }

        [XmlElement(Order=3)]
        public RelayOutputOptionsExtension Extension
        {
            get
            {
                return this.extensionField;
            }
            set
            {
                this.extensionField = value;
            }
        }

        [XmlElement("Mode", Order=0)]
        public RelayMode[] Mode
        {
            get
            {
                return this.modeField;
            }
            set
            {
                this.modeField = value;
            }
        }

        [XmlAttribute]
        public string token
        {
            get
            {
                return this.tokenField;
            }
            set
            {
                this.tokenField = value;
            }
        }
    }
}

